1. Field of the Invention
The present invention generally relates to a memory controller, and more particularly, to a non-volatile memory controller which can update a firmware directly on a printed circuit board and a memory card using the same.
2. Description of Related Art
Along with the rapid advancement of information technology, storage media developed based on semiconductor techniques have become the mainstream products and which are generally referred to as portable memories, flash memory cards, or memory cards. Compared to the conventional floppy disk and compact disk, portable memory is far more advantageous in its functional characteristics, such as portability, power consumption, data storage, data transmission rate, reread or rewrite, and vibration and damp proof. Due to all these advantages of portable memory, every international electronic product manufacturer has promoted its own portable memory, such as Smart card, PC card (PCMCIA ATA Flash Card), CF card (CompactFlash Card), SM card (Smart Media Card), MMC card (MultiMedia Card), MS card (Memory Stick Card), and SD card (Secure Digital Card), etc, and these portable memories are broadly applied to various digital products. Generally, after a memory card is manufactured, a firmware has to be written into the memory card by using a special fixture called MP-tooling (usually provided by the manufacturer of the memory card).
FIG. 1 is a functional block diagram illustrating how a firmware is written into a conventional multi-chip package (MCP) memory card. Referring to FIG. 1, the MCP integrated circuit (IC) 110 includes a non-volatile memory controller 120 and a plurality of non-volatile memories 160 and 170. The non-volatile memory controller 120 further includes an interface circuit 121, a processing unit 122, and a memory control unit 123. The MCP IC 110 may be a memory chip package conforming to the specification of Smart card, PC card, or SD card, etc.
Herein it is assumed that the non-volatile memory controller 120 is a SD memory card controller, and the non-volatile memories 160 and 170 are flash memory chips. If an external device, for example, a host 140, of the MCP IC 110 is about to access the non-volatile memory 160 or 170, the host 140 has to send a signal to the interface circuit 121 according to the specification of SD memory card. After a fixture 190 receives a new firmware, the fixture 190 sends the new firmware to the processing unit 122 through the interface circuit 121, and the processing unit 122 then writes the new firmware into the non-volatile memory 160 through the memory control unit 123.
In another conventional firmware updating technique, when the memory card becomes invalid or has compatibility problem and accordingly the firmware in the MCP IC 110 is to be updated, the MCP IC 110 soldered on a printed circuit board (PCB) is de-soldered (i.e., removed from the PCB) and then loaded into a specific firmware update fixture 190 to be written with the new firmware. Accordingly, this conventional technique is very inconvenient and costly.